import { ScoreTotalSchema } from './scoreSchema'

export interface CaseSchema extends ScoreTotalSchema {
  accept_datetime: number
  accept_no: string
  accept_structure: string
  accept_year: number
  accepter: string
  accepterid: string
  acceptno_desc: string
  acceptno_desc_doc: string
  anotheryear_claim: string
  applicant_name: string
  arbitrator: string
  arbitrator1: string
  arbitrator1_assigntype: string
  arbitrator2: string
  arbitrator2_assigntype: string
  arbitrator_assign0_datetime: number
  arbitrator_assign_datetime: number
  arbitrator_assign_datetime_list: number[]
  arbitrator_assigntype: string
  arbitrator_report_datetime: number
  arbitrator_sel_limit_datetime: number
  arbitrator_select_datetime: number
  arbitratorid: string
  arbitratorid1: string
  arbitratorid2: string
  arrive_datetime: number
  basis: string
  basis_fileid: string
  case_no: string
  caseno_desc: string
  casesubtype: string
  casetype: string
  cause_action: string
  cause_action_ext: string
  closure_audit_datetime: number
  closure_datetime: number
  closure_month: string
  closure_report_datetime: number
  closure_standard_datetime: number
  closure_type: string
  counter_dispute_amount: number
  counter_fee: number
  create_datetime: number
  delay_day: number
  dispute_amount: number
  dispute_amount_add: number
  docket_datetime: number
  fee: number
  fee_acceptance: number
  fee_acceptance_derate: number
  fee_acceptance_underate: number
  fee_paid: number
  fee_pay_datetime: number
  fee_processing: number
  fee_processing_derate: number
  fee_processing_underate: number
  fee_type: string
  file_datetime: number
  foreign_related_type: string
  hearing_datetime: number
  hearing_datetime_list: number[]
  id: string
  operator: string
  operatorid: string
  procedure: string
  processer: string
  processer_tutor: string
  processerid: string
  processerid_tutor: string
  processing_structure: string
  rearbitration: string
  respondent_name: string
  score: number
  score_base: number
  score_bonus: number
  score_deduct: number
  score_sample: number
  serial_no: string
  serieno: string
  status: string
  submit_datetime: number
  suspension_datetime: number
  tag: string
  to_process_datetime: number
  trial_limit: number
  trial_limit_deduct: number
  trial_limit_deduct_desc: string
  score_status: string
  fast_closure: string
  preservation_count: number
  fee_derate_count: number
  supgreement_count: number
  misprocedure_desc: string
  misprocedure_count: number
  misarbtity_desc: string
  misarbtity_count: number
  accepter_notice_list: CaseDocumentSchema[]
  processer_notice_list: CaseDocumentSchema[]
  processer_serieno: string
  accepter_serieno: string
  applicants: PartySchema[]
  respondents: PartySchema[]
  applicant_agents: PartySchema[]
  respondents_agents: PartySchema[]
  serienoInfo: {
    create_datetime: number
    id: string
    operator: string
    operatorid: string
    remark: string
    serieno: string
    status: number
    tag: string
    update_datetime: number
  }
  [k: string]: any
}

export interface PartySchema {
  area: string
  accountid: string
  biz_uid: string
  certifyid: string
  create_datetime: number
  email: string
  facecheck_info: string
  facecheck_status: string
  fileid: string
  hearingroomid: string
  id: string
  iscompere: number
  meetingid: string
  mobile: string
  name: string
  operator: string
  operatorid: string
  party: string
  partyid: string
  sign_fileid: string
  sign_info: string
  signed_fileid: string
  status: number
  tel: string
  type: string
  tag: string
  subject_type: string
}

export interface CaseDocumentSchema {
  key: string
  count: number
}

export interface CaseDocumentFullSchema {
  id: string
  key: string
  count: number
  title: string
  scope: string
}

export interface AgentSchema {
  partyIndex: string[]
  scope_type: string
  accountid: string
  action_subject: string
  address: string
  area: string
  caseid: string
  certifyid: string
  corporation: string
  create_datetime: number
  email: string
  fileid: string
  fileid1: string
  id: string
  license: string
  license_type: string
  mobile: string
  name: string
  operator: string
  operatorid: string
  party: Array<{
    caseid: string
    fileid: string
    partyid: string
    representativeid: string
    scope: string
    scope_type: string
    type: string
  }>
  party_name: string
  party_type: string
  status: string
  structure: string
  subject_casecode: string
  tel: string
  zip_code: string
}

export interface OtherPersonSchema {
  accountid: string
  action_subject: string
  address: string
  address_type: string
  caseid: string
  certifyid: string
  create_datetime: string
  email: string
  id: string
  license: string
  license_type: string
  mobile: string
  name: string
  operator: string
  operatorid: string
  status: number
  structure: string
  tel: string
  update_datetime: number
}
